// TODO
const axios = require('axios')
const crypto = require('crypto');
//调用百度翻译API实现从英文到中为句子的翻译
/**
 * 百度翻译API的APP ID
 */
const appID ="20251025002483098";

/**
 * 百度翻译API的密钥
 */
const appKey ="AlW3vhsby2bAS_y_c4uB";
/**
 * 将英文翻译为中文
 * @param {String} text 带翻译的英文
 * @returns 中文
 */
async function translate(text) { 
    // 如果没有需要翻译的文本，则直接返回
    if (!text) {
        return '';
    }
    
    // 生成随机数
    const salt = (new Date()).getTime();
    
    // 生成签名：appid+text+salt+密钥 的MD5值
    const signStr = appID + text + salt + appKey;
    const sign = crypto.createHash('md5').update(signStr, 'utf8').digest('hex');
    
    // 构造请求参数
    const url = 'https://fanyi-api.baidu.com/api/trans/vip/translate';
    const params = {
        q: text,
        from: 'en',
        to: 'zh',
        appid: appID,
        salt: salt,
        sign: sign
    };
    
    try {
        // 发送请求
        const response = await axios.get(url, { params });
        
        // 处理响应
        if (response.data && response.data.trans_result) {
            return response.data.trans_result[0].dst;
        } else {
            console.error('翻译失败:', response.data);
            return text; // 返回原文本
        }
    } catch (error) {
        console.error('翻译出错:', error.message);
        return text; // 出错时返回原文本
    }
}

module.exports = { translate };
